package com.css.zfzx.fwsjcj.modules.structure.entity;

import javax.persistence.*;
import java.util.Date;
import java.util.Objects;

/**
 * @author leon
 * @Title:
 * @Description: 木结构
 * @date 2020/6/2 15:15
 */
@Entity
@Table(name = "fw_wood_structure", schema = "fwsjcj", catalog = "")
public class FwWoodStructureEntity {
    private String id;
    /**
     * 空旷结构编号
     */
    private String woodStructureNum;
    /**
     * 所属省
     */
    private String belongtoProvince;
    /**
     * 所属市
     */
    private String belongtoCity;
    /**
     * 所属区县
     */
    private String belongtoArea;
    /**
     * 所属街道
     */
    private String belongtoStreet;
    /**
     * 经度
     */
    private String longitude;
    /**
     * 纬度
     */
    private String latitude;
    /**
     * 所属居委会
     */
    private String belongtoTown;
    /**
     * 建筑名称
     */
    private String buildingName;
    /**
     * 建造年代（70s以前,70s,80s,90s,00s,10s）
     */
    private String buildingAge;
    /**
     * 场地类型(I类、II类、III类、IV类)
     */
    private String siteType;
    /**
     * 建筑面积
     */
    private Double buildingArea;
    /**
     * 建筑长度
     */
    private Double buildingLength;
    /**
     * 建筑宽度
     */
    private Double buildingWidth;
    /**
     * 层数
     */
    private Integer floorNum;
    /**
     * 建筑高度
     */
    private Double buildingHeight;
    /**
     * 穿斗方式(横向穿斗贯穿整榀构架,无穿斗)
     */
    private String cdType;
    /**
     * 柱间支撑
     */
    private String zjzc;
    /**
     * 木柱梢径
     */
    private String mzsj;
    /**
     * 柱脚与基础连接
     */
    private String zjyjclj;
    /**
     * 木柱接榫牢固
     */
    private String mzjslg;
    /**
     * 节点状态(0（未加固）,1（加固）)
     */
    private String byteStatus;
    /**
     * 围护墙体类型
     */
    private String wallType;
    /**
     * 山尖墙体类型
     */
    private String sjqtType;
    /**
     * 墙体厚度
     */
    private Double wallThick;
    /**
     * 出屋面构件
     */
    private String cwmgj;
    /**
     * 墙体圈梁
     */
    private String wallRingBeam;
    /**
     * 建筑现状(完好、墙体歪闪、墙体开裂、墙体腐蚀酥碎、楼屋盖构件有变形、地基不均匀沉降)
     */
    private String buildingSituation;
    /**
     * 建筑造价/重置单价(保留2位小数，单位：万元/平方米)
     */
    private Double buildingCost;
    /**
     * 建筑照片
     */
    private String buildingPhoto;
    /**
     * 信息说明（填写需要说明的相关信息）
     */
    private String msgIllustrate;
    /**
     * 审核状态
     */
    private String status;
    /**
     * 审核人
     */
    private String checkUser;
    /**
     * 审核意见
     */
    private String checkOpinion;
    private String createUser;
    /**
     * 数据采集人
     */
    private String collectUser;
    private Date createTime;
    private String updateUser;
    private Date updateTime;
    private String delFlag;
    /**
     * 任务ID
     */
    private String taskId;
    /**
     * 任务名称
     */
    private String taskName;
    /**
     * 详细文档
     */
    private String detailFile;
    /**
     * 超级管理员退回意见
     * @return
     */
    private String superBackOpinion;
    /**
     * 省级退回意见
     * @return
     */
    private String provinceBackOpinion;
    @Basic
    @Column(name = "super_back_opinion")
    public String getSuperBackOpinion() {
        return superBackOpinion;
    }

    public void setSuperBackOpinion(String superBackOpinion) {
        this.superBackOpinion = superBackOpinion;
    }

    @Basic
    @Column(name = "province_back_opinion")
    public String getProvinceBackOpinion() {
        return provinceBackOpinion;
    }

    public void setProvinceBackOpinion(String provinceBackOpinion) {
        this.provinceBackOpinion = provinceBackOpinion;
    }

    @Id
    @Column(name = "id")
    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    @Basic
    @Column(name = "wood_structure_num")
    public String getWoodStructureNum() {
        return woodStructureNum;
    }

    public void setWoodStructureNum(String woodStructureNum) {
        this.woodStructureNum = woodStructureNum;
    }

    @Basic
    @Column(name = "belongto_province")
    public String getBelongtoProvince() {
        return belongtoProvince;
    }

    public void setBelongtoProvince(String belongtoProvince) {
        this.belongtoProvince = belongtoProvince;
    }

    @Basic
    @Column(name = "belongto_city")
    public String getBelongtoCity() {
        return belongtoCity;
    }

    public void setBelongtoCity(String belongtoCity) {
        this.belongtoCity = belongtoCity;
    }

    @Basic
    @Column(name = "belongto_area")
    public String getBelongtoArea() {
        return belongtoArea;
    }

    public void setBelongtoArea(String belongtoArea) {
        this.belongtoArea = belongtoArea;
    }

    @Basic
    @Column(name = "belongto_street")
    public String getBelongtoStreet() {
        return belongtoStreet;
    }

    public void setBelongtoStreet(String belongtoStreet) {
        this.belongtoStreet = belongtoStreet;
    }

    @Basic
    @Column(name = "longitude")
    public String getLongitude() {
        return longitude;
    }

    public void setLongitude(String longitude) {
        this.longitude = longitude;
    }

    @Basic
    @Column(name = "latitude")
    public String getLatitude() {
        return latitude;
    }

    public void setLatitude(String latitude) {
        this.latitude = latitude;
    }


    @Basic
    @Column(name = "belongto_town")
    public String getBelongtoTown() {
        return belongtoTown;
    }

    public void setBelongtoTown(String belongtoTown) {
        this.belongtoTown = belongtoTown;
    }

    @Basic
    @Column(name = "building_name")
    public String getBuildingName() {
        return buildingName;
    }

    public void setBuildingName(String buildingName) {
        this.buildingName = buildingName;
    }

    @Basic
    @Column(name = "building_age")
    public String getBuildingAge() {
        return buildingAge;
    }

    public void setBuildingAge(String buildingAge) {
        this.buildingAge = buildingAge;
    }

    @Basic
    @Column(name = "site_type")
    public String getSiteType() {
        return siteType;
    }

    public void setSiteType(String siteType) {
        this.siteType = siteType;
    }

    @Basic
    @Column(name = "building_area")
    public Double getBuildingArea() {
        return buildingArea;
    }

    public void setBuildingArea(Double buildingArea) {
        this.buildingArea = buildingArea;
    }

    @Basic
    @Column(name = "building_length")
    public Double getBuildingLength() {
        return buildingLength;
    }

    public void setBuildingLength(Double buildingLength) {
        this.buildingLength = buildingLength;
    }

    @Basic
    @Column(name = "building_width")
    public Double getBuildingWidth() {
        return buildingWidth;
    }

    public void setBuildingWidth(Double buildingWidth) {
        this.buildingWidth = buildingWidth;
    }

    @Basic
    @Column(name = "floor_num")
    public Integer getFloorNum() {
        return floorNum;
    }

    public void setFloorNum(Integer floorNum) {
        this.floorNum = floorNum;
    }

    @Basic
    @Column(name = "building_height")
    public Double getBuildingHeight() {
        return buildingHeight;
    }

    public void setBuildingHeight(Double buildingHeight) {
        this.buildingHeight = buildingHeight;
    }

    @Basic
    @Column(name = "cd_type")
    public String getCdType() {
        return cdType;
    }

    public void setCdType(String cdType) {
        this.cdType = cdType;
    }

    @Basic
    @Column(name = "zjzc")
    public String getZjzc() {
        return zjzc;
    }

    public void setZjzc(String zjzc) {
        this.zjzc = zjzc;
    }

    @Basic
    @Column(name = "mzsj")
    public String getMzsj() {
        return mzsj;
    }

    public void setMzsj(String mzsj) {
        this.mzsj = mzsj;
    }

    @Basic
    @Column(name = "zjyjclj")
    public String getZjyjclj() {
        return zjyjclj;
    }

    public void setZjyjclj(String zjyjclj) {
        this.zjyjclj = zjyjclj;
    }

    @Basic
    @Column(name = "mzjslg")
    public String getMzjslg() {
        return mzjslg;
    }

    public void setMzjslg(String mzjslg) {
        this.mzjslg = mzjslg;
    }

    @Basic
    @Column(name = "byte_status")
    public String getByteStatus() {
        return byteStatus;
    }

    public void setByteStatus(String byteStatus) {
        this.byteStatus = byteStatus;
    }

    @Basic
    @Column(name = "wall_type")
    public String getWallType() {
        return wallType;
    }

    public void setWallType(String wallType) {
        this.wallType = wallType;
    }

    @Basic
    @Column(name = "sjqt_type")
    public String getSjqtType() {
        return sjqtType;
    }

    public void setSjqtType(String sjqtType) {
        this.sjqtType = sjqtType;
    }

    @Basic
    @Column(name = "wall_thick")
    public Double getWallThick() {
        return wallThick;
    }

    public void setWallThick(Double wallThick) {
        this.wallThick = wallThick;
    }

    @Basic
    @Column(name = "cwmgj")
    public String getCwmgj() {
        return cwmgj;
    }

    public void setCwmgj(String cwmgj) {
        this.cwmgj = cwmgj;
    }

    @Basic
    @Column(name = "wall_ring_beam")
    public String getWallRingBeam() {
        return wallRingBeam;
    }

    public void setWallRingBeam(String wallRingBeam) {
        this.wallRingBeam = wallRingBeam;
    }

    @Basic
    @Column(name = "building_situation")
    public String getBuildingSituation() {
        return buildingSituation;
    }

    public void setBuildingSituation(String buildingSituation) {
        this.buildingSituation = buildingSituation;
    }

    @Basic
    @Column(name = "building_cost")
    public Double getBuildingCost() {
        return buildingCost;
    }

    public void setBuildingCost(Double buildingCost) {
        this.buildingCost = buildingCost;
    }

    @Basic
    @Column(name = "building_photo")
    public String getBuildingPhoto() {
        return buildingPhoto;
    }

    public void setBuildingPhoto(String buildingPhoto) {
        this.buildingPhoto = buildingPhoto;
    }

    @Basic
    @Column(name = "msg_illustrate")
    public String getMsgIllustrate() {
        return msgIllustrate;
    }

    public void setMsgIllustrate(String msgIllustrate) {
        this.msgIllustrate = msgIllustrate;
    }

    @Basic
    @Column(name = "status")
    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    @Basic
    @Column(name = "check_user")
    public String getCheckUser() {
        return checkUser;
    }

    public void setCheckUser(String checkUser) {
        this.checkUser = checkUser;
    }

    @Basic
    @Column(name = "check_opinion")
    public String getCheckOpinion() {
        return checkOpinion;
    }

    public void setCheckOpinion(String checkOpinion) {
        this.checkOpinion = checkOpinion;
    }

    @Basic
    @Column(name = "create_user")
    public String getCreateUser() {
        return createUser;
    }

    public void setCreateUser(String createUser) {
        this.createUser = createUser;
    }

    @Basic
    @Column(name = "collect_user")
    public String getCollectUser() {
        return collectUser;
    }

    public void setCollectUser(String collectUser) {
        this.collectUser = collectUser;
    }

    @Basic
    @Column(name = "create_time")
    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    @Basic
    @Column(name = "update_user")
    public String getUpdateUser() {
        return updateUser;
    }

    public void setUpdateUser(String updateUser) {
        this.updateUser = updateUser;
    }

    @Basic
    @Column(name = "update_time")
    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    @Basic
    @Column(name = "del_flag")
    public String getDelFlag() {
        return delFlag;
    }

    public void setDelFlag(String delFlag) {
        this.delFlag = delFlag;
    }

    @Basic
    @Column(name = "task_id")
    public String getTaskId() {
        return taskId;
    }

    public void setTaskId(String taskId) {
        this.taskId = taskId;
    }

    @Basic
    @Column(name = "task_name")
    public String getTaskName() {
        return taskName;
    }

    public void setTaskName(String taskName) {
        this.taskName = taskName;
    }

    @Basic
    @Column(name = "detail_file")
    public String getDetailFile() {
        return detailFile;
    }

    public void setDetailFile(String detailFile) {
        this.detailFile = detailFile;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        FwWoodStructureEntity that = (FwWoodStructureEntity) o;
        return Objects.equals(id, that.id) &&
                Objects.equals(woodStructureNum, that.woodStructureNum) &&
                Objects.equals(belongtoProvince, that.belongtoProvince) &&
                Objects.equals(belongtoCity, that.belongtoCity) &&
                Objects.equals(belongtoArea, that.belongtoArea) &&
                Objects.equals(belongtoStreet, that.belongtoStreet) &&
                Objects.equals(belongtoTown, that.belongtoTown) &&
                Objects.equals(buildingName, that.buildingName) &&
                Objects.equals(buildingAge, that.buildingAge) &&
                Objects.equals(siteType, that.siteType) &&
                Objects.equals(buildingArea, that.buildingArea) &&
                Objects.equals(buildingLength, that.buildingLength) &&
                Objects.equals(buildingWidth, that.buildingWidth) &&
                Objects.equals(floorNum, that.floorNum) &&
                Objects.equals(buildingHeight, that.buildingHeight) &&
                Objects.equals(cdType, that.cdType) &&
                Objects.equals(zjzc, that.zjzc) &&
                Objects.equals(mzsj, that.mzsj) &&
                Objects.equals(zjyjclj, that.zjyjclj) &&
                Objects.equals(mzjslg, that.mzjslg) &&
                Objects.equals(byteStatus, that.byteStatus) &&
                Objects.equals(wallType, that.wallType) &&
                Objects.equals(sjqtType, that.sjqtType) &&
                Objects.equals(wallThick, that.wallThick) &&
                Objects.equals(cwmgj, that.cwmgj) &&
                Objects.equals(wallRingBeam, that.wallRingBeam) &&
                Objects.equals(buildingSituation, that.buildingSituation) &&
                Objects.equals(buildingCost, that.buildingCost) &&
                Objects.equals(buildingPhoto, that.buildingPhoto) &&
                Objects.equals(msgIllustrate, that.msgIllustrate) &&
                Objects.equals(status, that.status) &&
                Objects.equals(checkUser, that.checkUser) &&
                Objects.equals(checkOpinion, that.checkOpinion) &&
                Objects.equals(createUser, that.createUser) &&
                Objects.equals(collectUser, that.collectUser) &&
                Objects.equals(createTime, that.createTime) &&
                Objects.equals(updateUser, that.updateUser) &&
                Objects.equals(updateTime, that.updateTime) &&
                Objects.equals(delFlag, that.delFlag) &&
                Objects.equals(taskId, that.taskId) &&
                Objects.equals(taskName, that.taskName) &&
                Objects.equals(detailFile, that.detailFile);
    }

    @Override
    public int hashCode() {
        return Objects.hash(id, woodStructureNum, belongtoProvince, belongtoCity, belongtoArea, belongtoStreet, belongtoTown, buildingName, buildingAge, siteType, buildingArea, buildingLength, buildingWidth, floorNum, buildingHeight, cdType, zjzc, mzsj, zjyjclj, mzjslg, byteStatus, wallType, sjqtType, wallThick, cwmgj, wallRingBeam, buildingSituation, buildingCost, buildingPhoto, msgIllustrate, status, checkUser, checkOpinion, createUser, collectUser, createTime, updateUser, updateTime, delFlag, taskId, taskName, detailFile);
    }
}
